#ifndef _UTILEX_NOTIFYSEMAPHORE_HPP_
#define _UTILEX_NOTIFYSEMAPHORE_HPP_

#include <crt_util.h>
#include <utilex/sem.hpp>

#ifdef __cplusplus

class CNotifySem
{
public:
    CNotifySem() { }
    virtual ~CNotifySem() { }

public:
    HRESULT PostWorkSem() { return m_SemWork.Post(); }

    HRESULT WaitWorkSem() { return m_SemWork.Wait(); }

    HRESULT PostExitSem() { return m_SemExit.Post(); }

    HRESULT WaitExitSem(int sec) { return m_SemExit.WaitTime(sec); }

public:
    CSemHandle m_SemWork;
    CSemHandle m_SemExit;
};

#endif

#endif
